package com.five.community.bean;

import lombok.*;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

@Data
@AllArgsConstructor
@NoArgsConstructor
@RequiredArgsConstructor
public class Parkinguse {
//    id             INT         PRIMARY key NOT NULL auto_increment   COMMENT'编号',
//    vid            INT         NOT NULL                              COMMENT'所属小区id',
//    pid            INT         NOT NULL UNIQUE                       COMMENT'所属车位id',
//    car_num        VARCHAR(20) NOT NULL UNIQUE                       COMMENT'车牌号',
//    picture        VARCHAR(80) NOT NULL                              COMMENT'车辆牌照',
//    holder_id      INT         NOT NULL                              COMMENT'车辆所有人id',
//    telephone      VARCHAR(20) NOT NULL                              COMMENT'联系方式，11位数字',
//    type           TINYINT     UNSIGNED NOT NULL                     COMMENT'使用性质，0=租，1=售',
//    cost           SMALLINT    NOT NULL                              COMMENT'总费用',
//    start_date     TIMESTAMP   NOT NULL                              COMMENT'开始使用时间',
//    end_date       TIMESTAMP   NOT NULL                              COMMENT'截止使用时间',
//    create_date    TIMESTAMP   NOT NULL                              COMMENT'创建时间',

    private long id;  //编号

    @NonNull
    private String carNum;  //车牌号
    @NonNull
    private String picture;  //车辆牌照
    @NonNull
    private long holderId;  //车辆所有人id（外键）
    @NonNull
    private String telephone;  //联系方式，11位数字
    @NonNull
    private boolean type;  //使用性质，0=租，1=售
    @NonNull
    private int cost;  //总费用
    //    @NonNull
    @DateTimeFormat(pattern = "yyyy-MM-dd'T'HH:mm")
    private Date startDate;  //开始使用时间
    @NonNull
    @DateTimeFormat(pattern = "yyyy-MM-dd'T'HH:mm")
    private Date endDate;  //截止使用时间
    //    @NonNull
    @DateTimeFormat(pattern = "yyyy-MM-dd'T'HH:mm")
    private Date createDate;  //创建时间
    @NonNull
    private long vid;  //所属小区id（外键）
    @NonNull
    private long pid;  //所属车位id（外键）


    public Parkinguse(long id, @NonNull String carNum, @NonNull String picture, @NonNull long holderId,
                      @NonNull String telephone, @NonNull boolean type, @NonNull int cost,
                      @NonNull Date endDate, @NonNull long vid, @NonNull long pid) {
        this.id = id;
        this.carNum = carNum;
        this.picture = picture;
        this.holderId = holderId;
        this.telephone = telephone;
        this.type = type;
        this.cost = cost;
        this.endDate = endDate;
        this.vid = vid;
        this.pid = pid;
    }
}
